package com.nanyang.tms.api.service.companypickaddress;

import com.nanyang.common.core.domain.ApiResult;
import com.nanyang.common.core.page.PageBean;
import com.nanyang.tms.api.dto.request.companypickaddress.*;
import com.nanyang.tms.api.dto.response.companypickaddress.CompanyPickAddressPageResponse;
import com.nanyang.tms.api.dto.response.companypickaddress.CompanyPickAddressResponse;

public interface CompanyPickAddressRpcService {
    /**
     *
     * <p>listCompanyPickAddress</p>
     * <p>Description:(查询列表)</p>
     *
     * @param param
     * @return
     */
    ApiResult<PageBean<CompanyPickAddressPageResponse>> listCompanyPickAddress(CompanyPickAddressQueryRequest param);
    /**
     *
     * <p>getCompanyPickAddressById</p>
     * <p>Description:(根据code获取详情)</p>
     *
     * @param param
     * @return
     */
    ApiResult<CompanyPickAddressResponse> selectByCode(CompanyPickAddressQueryRequest param);

    /**
     *
     * <p>saveCompanyPickAddress</p>
     * <p>Description:(保存)</p>
     *
     * @param param
     * @return
     */
    ApiResult<Boolean> saveCompanyPickAddress(CompanyPickAddressAddRequest param);

    /**
     *
     * <p>updateCompanyPickAddress</p>
     * <p>Description:(修改)</p>
     *
     * @param param
     * @return
     */
    ApiResult<Boolean> updateCompanyPickAddress(CompanyPickAddressUpdateRequest param);

    /**
     * 设置默认地址
     * @param param
     * @return
     */
    ApiResult<Boolean> updateDefault(CompanyPickAddressDefautRequest param);
    /**
     *
     * <p>delCompanyPickAddressById</p>
     * <p>Description:(根据code删除)</p>
     *
     * @param param
     * @return
     */
    ApiResult<Boolean> delCompanyPickAddress(CompanyPickAddressDelRequest param);
}
